package com.jrx.anytxn.param.mapper.ext;

import com.jrx.anytxn.param.entity.PrInvestorTable;
import com.jrx.anytxn.param.mapper.base.PrInvestorTableMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 出资方表 接口的扩展
 *
 * @author 黄秋平
 * @date 2020-05-11 17:29
 **/
public interface ExtPrInvestorTableMapper extends PrInvestorTableMapper {

    /**
     * 根据租户ID查询所有
     *
     * @param tenantId 租户ID
     * @return java.util.List<com.jrx.anytxn.param.entity.PrInvestorTable>
     */
    List<PrInvestorTable> selectByTenantId(@Param("tenantId")String tenantId,@Param("tableStatus") String tableStatus);

    /**
     * 根据租户Id和出资方ID更新
     *
     * @param investorTable 利率实体
     * @return int
     */
    int updateByPrimaryKeySelectiveAndNotNull(PrInvestorTable investorTable);

    /**
     * 根据租户ID和利率表ID删除此信息
     *
     * @param tenantId   租户ID
     * @param investorId investorId
     * @return int
     */
    int deleteByInvestorIdAndTenId(@Param("investorId") String investorId,@Param("tenantId") String tenantId);

    /**
     * 根据租户ID和出资方ID查寻信息
     *
     * @param tenantId   租户ID
     * @param investorId 出资方id
     * @return com.jrx.anytxn.param.entity.PrInvestorTable
     */
    PrInvestorTable selectByTenIdAndInvestorId(@Param("tenantId") String tenantId, @Param("investorId") String investorId);


    /**
     * 查询所有状态正常的资金方
     * @param status
     * @return
     */
    List<PrInvestorTable> selectAllByTableStatus(String status);

    /**
     * 根据字段是否为空更新
     *
     * @param record PrInvestorTable
     * @return int 更新的条数
     * @author liuyang
     * @date  2020-06-08
     */
    int extUpdateByPrimaryKeySelective(PrInvestorTable record);
}
